package model

// Lamp 灯定义
type Lamp struct {
	ID      uint64 `gorm:"primary_key;auto_increment" json:"id"`
	Name    string `gorm:"type:varchar(256);not null;DEFAULT:''" json:"name"`
	BoardID uint64 `gorm:"not null;DEFAULT:'0'" json:"boardid"`
	Key     string `gorm:"type:varchar(64);not null;DEFAULT:''" json:"key"`
	OnOff   bool   `gorm:"not null;DEFAULT:'false'" json:"onoff"`
	Disable bool   `gorm:"not null;DEFAULT:'false'" json:"disable"`
}

// TableName 表名
func (node Lamp) TableName() string {
	return "lamps"
}

// Board 开发板定义
type Board struct {
	ID      uint64 `gorm:"primary_key;auto_increment" json:"id"`
	Name    string `gorm:"type:varchar(256);not null;DEFAULT:''" json:"name"`
	Mac     string `gorm:"type:varchar(64);not null;DEFAULT:''" json:"mac"`
	IP      string `gorm:"type:varchar(64);not null;DEFAULT:''" json:"ip"`
	StartTM int64  `gorm:"not null;DEFAULT:'0'" json:"start_tm"`
	TickTM  int64  `gorm:"not null;DEFAULT:'0'" json:"tick_tm"`
	Disable bool   `gorm:"not null;DEFAULT:'false'" json:"disable"`
}

// TableName 表名
func (node Board) TableName() string {
	return "boards"
}
